In the constantly evolving world of web communications, where information has to be deployed quickly and reliably, full-duplex communication in websites is key for improving customer experience and decreasing the amount of requests to web servers in order to obtain the most current data update. Consider a scenario within an auction website, where several users follow bids related to a specific item. FIG. 1A illustrates such a scenario.
As illustrated in FIG. 1A, each client device (e.g., 102A, 102B, 102C) transmits a request (e.g., an AJAX request) to the web server 104 at periodic intervals (e.g., every second) to obtain information related to the latest bid or any other updates to the auction. If there is no bid or other status update for 1 minute, 60 requests per user are sent and handled by the server when in fact there is no change in status. This architecture imposes a huge load on the web server and uses a lot of bandwidth due, for example, overhead associated with HTTP GET headers.
To avoid such a cumbersome load on the servers, an improved scenario would be for the server to broadcast (push) information related to latest bids or other such updates to all the users when a new bid is placed. FIG. 1B depicts such scenario. Here, each client receives an update through a direct connection with a full-duplex underlying platform (e.g., an HTML5 WebSocket platform). However, even such an improved scenario presents bandwidth strains on the web server and other related issues as will be explained in the following detailed description.
Securing this full-duplex communications over an open network such as the internet is mandatory for most applications. At the same time this full-duplex communications demand the use of persistent connections between the servers and the users, bringing new challenges to the systems scalability especially in websites with millions of concurrent users exchanging billions of messages.
Overall, the examples herein of some prior or related systems and their associated limitations are intended to be illustrative and not exclusive. Other limitations of existing or prior systems will become apparent to those of skill in the art upon reading the following Detailed Description.